#include"processbar.h"


//倒计时代码
//这里用到回车与换行的知识
//‘\r’ 回车，回到当前行的行首，而不会换到下一行，如果接着输出的话，本行以前的内容会被逐一覆盖；
//‘\n’ 换行，换到当前位置的下一行，而不会回到行首；
//Linux中遇到换行符("\n")会进行回车+换行的操作


//int main()
//{
//	printf("hello world!\r\n");
//	sleep(2);
//return 0;
//}
//现象：等待2秒以后，才打印hello world！
//但是并不是先执行sleep再执行printf的，一定是从上往下执行。
//在sleep期间，hello world！只是没有被刷新出来，被保存在了缓冲区，程序结束再刷新缓冲区打印
//只有\r现象：睡眠2秒，然后看不到打印的信息，只输出linux命令行,没有看到"hello world",不代表它被丢弃了，只是暂时存储在缓冲区内。
//只有\r的解决办法：这里在printf以后，用 fflush(stdout); 来刷新缓冲区先把hello world！打印出来，再sleep等待2秒结束程序，可以清晰的看见这个过程。
//int main()
//{
//  int cent=10;
//  while(cent)
//  {
//    printf("%-2d\r",cent);//-表示左对齐，%2d,代表长度为2,右对齐,不够左边补空格,多了以实际长度输出
//    fflush(stdout);
//    sleep(1);
//    cent--;
//  }
//  printf("\n");
 // return 0;
//}




//进度条代码

int main()
{
    char bar[num]={0};
    char round[]="|/-\";
    int cent=0;
    while(cent<=num)
    {
      printf("[%-100s][%d%%][%c]\r",bar,cent,round[cent%4]);
      bar[cent++]=style;
      fflush(stdout);
     usleep(100000);
    }
  return 0;
}




